Apparatus and methods for power management on mobile devices

ABSTRACT

Various embodiments for providing enhanced power savings in mobile computing devices are described. In one or more embodiments, a mobile computing device may monitor the battery power level remaining. The mobile computing device may select a wireless connection type for an application based on Quality of Service (QoS) requirements of the application and the amount of battery power remaining. The mobile computing device may switch the application from a higher QoS wireless connection type to a lower QoS wireless connection type when the battery power falls below a threshold. Other embodiments are described and claimed.

BACKGROUND

A mobile computing device, such as a combination handheld computer andmobile telephone, or smart phone, generally may provide voice and datacommunication functionality, as well as computing and processingcapabilities. In order to provide communication functionality, thedevice may need to search for and maintain multiple types of wirelesssignal connections. Different wireless connections require differentamounts of battery power and may consume battery power at differentrates. Further, different types of wireless activity may consume batterypower at different rates, and/or may require specific quality of service(QoS) criteria. Accordingly, there may be a need for an improvedapparatus and methods for providing enhanced power savings whilemaintaining communication services.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a mobile computing device in accordance with one ormore embodiments.

FIG. 2 illustrates a logic flow in accordance with one or moreembodiments.

FIG. 3 illustrates a logic flow in accordance with one or moreembodiments.

FIG. 4 illustrates one embodiment of a logic diagram.

DETAILED DESCRIPTION

Various embodiments are directed to providing enhanced power savings onmobile devices, in particular, battery power savings. In one or moreembodiments, a mobile computing device may include several radios thatmay provide several types of wireless connections. The mobile computingdevice may monitor the remaining battery power, which wirelessapplications are in use, and what quality of service (QoS) is needed bythe applications. The mobile computing device may then, for example,switch an application to a different radio or wireless communicationtype when the battery power level drops below a threshold, or maydisable a radio or wireless communication type altogether.

FIG. 1 illustrates a mobile computing device 100 in accordance with oneor more embodiments. The mobile computing device 100 may be implementedas a combination handheld computer and mobile telephone, sometimesreferred to as a smart phone. Examples of smart phones include, but arenot limited to, for example, Palm® products such as Palm® Treo™ andPalm® Pre™ smart phones. Although some embodiments may be described withthe mobile computing device 100 implemented as a smart phone by way ofexample, it may be appreciated that the embodiments are not limited inthis context. For example, the mobile computing device 100 may comprise,or be implemented as, any type of wireless device, mobile station, orportable computing device with a self-contained power source (e.g.,battery) such as a laptop computer, ultra-laptop computer, personaldigital assistant (PDA), cellular telephone, combination cellulartelephone/PDA, mobile unit, subscriber station, user terminal, portablecomputer, handheld computer, palmtop computer, wearable computer, mediaplayer, pager, messaging device, data communication device, and soforth.

The mobile computing device 100 may provide voice communicationsfunctionality in accordance with different types of cellularradiotelephone systems. Examples of cellular radiotelephone systems mayinclude Code Division Multiple Access (CDMA) systems, Global System forMobile Communications (GSM) systems, North American Digital Cellular(NADC) systems, Time Division Multiple Access (TDMA) systems,Extended-TDMA (E-TDMA) systems, Narrowband Advanced Mobile Phone Service(NAMPS) systems, third generation (3G) systems such as Wide-band CDMA(WCDMA), CDMA-2000, Universal Mobile Telephone System (UMTS) systems,and so forth.

In addition to voice communications functionality, the mobile computingdevice 100 may be arranged to provide data communications functionalityin accordance with different types of cellular radiotelephone systems.Examples of cellular radiotelephone systems offering data communicationsservices may include GSM with General Packet Radio Service (GPRS)systems (GSM/GPRS), CDMA/1xRTT systems, Enhanced Data Rates for GlobalEvolution (EDGE) systems, Evolution Data Only or Evolution DataOptimized (EV-DO) systems, Evolution For Data and Voice (EV-DV) systems,High Speed Downlink Packet Access (HSDPA) systems, High Speed UplinkPacket Access (HSUPA), and so forth.

The mobile computing device 100 may be arranged to provide voice and/ordata communications functionality in accordance with different types ofwireless network systems. Examples of wireless network systems mayinclude a wireless local area network (WLAN) system, wirelessmetropolitan area network (WMAN) system, wireless wide area network(WWAN) system, and so forth. Examples of suitable wireless networksystems offering data communication services may include the Instituteof Electrical and Electronics Engineers (IEEE) 802.xx series ofprotocols, such as the IEEE 802.11a/b/g/n series of standard protocolsand variants (also referred to as “WiFi”), the IEEE 802.16 series ofstandard protocols and variants (also referred to as “WiMAX”), the IEEE802.20 series of standard protocols and variants, and so forth.

The mobile computing device 100 may be arranged to perform datacommunications in accordance with different types of shorter rangewireless systems, such as a wireless personal area network (PAN) system.One example of a suitable wireless PAN system offering datacommunication services may include a Bluetooth system operating inaccordance with the Bluetooth Special Interest Group (SIG) series ofprotocols, including Bluetooth Specification versions v1.0, v1.1, v1.2,v2.0, v2.0 with Enhanced Data Rate (EDR), as well as one or moreBluetooth Profiles, and so forth. Other examples may include systemsusing infrared techniques or near-field communication techniques andprotocols, such as electro-magnetic induction (EMI) techniques. Anexample of EMI techniques may include passive or active radio-frequencyidentification (RFID) protocols and devices.

As shown in the embodiment of FIG. 1, the mobile computing device 100may comprise a dual or multi-processor architecture including a hostprocessor 102 and a radio processor 104. In various implementations, thehost processor 102 and the radio processor 104 may be arranged tocommunicate with each other using interfaces 106 such as one or moreuniversal serial bus (USB) interfaces, micro-USB interfaces, universalasynchronous receiver-transmitter (UART) interfaces, general purposeinput/output (GPIO) interfaces, control/status lines, control/datalines, audio lines, and so forth.

The host processor 102 may be responsible for executing various softwareprograms such as system programs and applications programs to providecomputing and processing operations for the mobile computing device 100.The radio processor 104 may be responsible for performing various voiceand data communications operations for the mobile computing device 100such as transmitting and receiving voice and data information over oneor more wireless communications channels. Although some embodiments maybe described as comprising a dual processor architecture for purposes ofillustration, the mobile computing device 100 may comprise any suitableprocessor architecture and/or any suitable number of processorsconsistent with the described embodiments.

The host processor 102 may be implemented as a host central processingunit (CPU) using any suitable processor or logic device, such as a as ageneral purpose processor. Although some embodiments may be describedwith the host processor 102 implemented as a CPU or general purposeprocessor by way of example, it may be appreciated that the embodimentsare not limited in this context. For example, the host processor 102 maycomprise, or be implemented as, a chip multiprocessor (CMP), dedicatedprocessor, embedded processor, media processor, input/output (I/O)processor, co-processor, microprocessor, controller, microcontroller,application specific integrated circuit (ASIC), field programmable gatearray (FPGA), programmable logic device (PLD), or other processingdevice in accordance with the described embodiments.

As shown, the host processor 102 may be coupled through a memory bus 108to a memory 110. The memory bus 108 may comprise any suitable interfaceand/or bus architecture for allowing the host processor 102 to accessthe memory 110. Although the memory 110 may be shown as being separatefrom the host processor 102 for purposes of illustration, in variousembodiments some portion or the entire memory 110 may be included on thesame integrated circuit as the host processor 102. Alternatively, someportion or the entire memory 110 may be disposed on an integratedcircuit or other medium (e.g., hard disk drive) external to theintegrated circuit of host processor 102. In various embodiments, themobile computing device 100 may comprise an expansion slot to support amultimedia and/or memory card, for example.

The memory 110 may be implemented using any machine-readable orcomputer-readable media capable of storing data such as volatile memoryor non-volatile memory, removable or non-removable memory, erasable ornon-erasable memory, writeable or re-writeable memory, and so forth.Examples of machine-readable storage media may include, withoutlimitation, random-access memory (RAM), dynamic RAM (DRAM),Double-Data-Rate DRAM (DDRAM), synchronous DRAM (SDRAM), static RAM(SRAM), read-only memory (ROM), programmable ROM (PROM), erasableprogrammable ROM (EPROM), electrically erasable programmable ROM(EEPROM), flash memory (e.g., NOR or NAND flash memory), contentaddressable memory (CAM), polymer memory (e.g., ferroelectric polymermemory), phase-change memory, ovonic memory, ferroelectric memory,silicon-oxide-nitride-oxide-silicon (SONOS) memory, magnetic or opticalcards, or any other type of media suitable for storing information.

The mobile computing device 100 may comprise an alphanumeric keypad 112coupled to the host processor 102. The keypad 112 may comprise, forexample, a QWERTY key layout and an integrated number dial pad. Themobile computing device 100 also may comprise various keys, buttons, andswitches such as, for example, input keys, preset and programmable hotkeys, left and right action buttons, a navigation button such as amultidirectional navigation button, phone/send and power/end buttons,preset and programmable shortcut buttons, a volume rocker switch, aringer on/off switch having a vibrate mode, and so forth.

The mobile computing device 100 may comprise a display 114 coupled tothe host processor 102. The display 114 may comprise any suitable visualinterface for displaying content to a user of the mobile computingdevice 100. In one embodiment, for example, the display 114 may beimplemented by a liquid crystal display (LCD) such as a touch-sensitivecolor (e.g., 16-bit color) thin-film transistor (TFT) LCD screen. Insome embodiments, the touch-sensitive LCD may be used with a stylusand/or a handwriting recognizer program.

The mobile computing device 100 may comprise an input/output (I/O)interface 116 coupled to the host processor 102. The I/O interface 116may comprise one or more I/O devices such as a serial connection port,an infrared port, integrated Bluetooth® wireless capability, and/orintegrated 802.11x (WiFi) wireless capability, to enable wired (e.g.,USB cable) and/or wireless connection to a local computer system, suchas a local personal computer (PC). In various implementations, mobilecomputing device 100 may be arranged to transfer and/or synchronizeinformation with the local computer system.

The host processor 102 may be coupled to various audio/video (A/V)devices 118 that support A/V capability of the mobile computing device100. Examples of A/V devices 118 may include, for example, a microphone,one or more speakers, an audio port to connect an audio headset, anaudio coder/decoder (codec), an audio player, a digital camera, a videocamera, a video codec, a video player, and so forth.

The host processor 102 may be coupled to a power supply 120 arranged tosupply and manage power to the elements of the mobile computing device100. In various embodiments, the power supply 120 may be implemented bya rechargeable battery, such as a removable and rechargeable lithium ionbattery to provide direct current (DC) power, and/or an alternatingcurrent (AC) adapter to draw power from a standard AC main power supply.

As mentioned above, the radio processor 104 may perform voice and/ordata communication operations for the mobile computing device 100. Forexample, the radio processor 104 may be arranged to communicate voiceinformation and/or data information over one or more assigned frequencybands of a wireless communication channel. In various embodiments, theradio processor 104 may be implemented as a communications processorusing any suitable processor or logic device, such as a modem processoror baseband processor. Although some embodiments may be described withthe radio processor 104 implemented as a modem processor or basebandprocessor by way of example, it may be appreciated that the embodimentsare not limited in this context. For example, the radio processor 104may comprise, or be implemented as, a digital signal processor (DSP),media access control (MAC) processor, or any other type ofcommunications processor in accordance with the described embodiments.

In various embodiments, the radio processor 104 may perform analogand/or digital baseband operations for the mobile computing device 100.For example, the radio processor 104 may perform digital-to-analogconversion (DAC), analog-to-digital conversion (ADC), modulation,demodulation, encoding, decoding, encryption, decryption, and so forth.

The mobile computing device 100 may comprise a memory 122 coupled to theradio processor 104. The memory 122 may be implemented using one or moretypes of machine-readable or computer-readable media capable of storingdata such as volatile memory or non-volatile memory, removable ornon-removable memory, erasable or non-erasable memory, writeable orre-writeable memory, and so forth. The memory 122 may comprise, forexample, flash memory and secure digital (SD) RAM. Although the memory122 may be shown as being separate from and external to the radioprocessor 104 for purposes of illustration, in various embodiments someportion or the entire memory 122 may be included on the same integratedcircuit as the radio processor 104.

The mobile computing device 100 may comprise a transceiver module 124coupled to the radio processor 104. The transceiver module 124 maycomprise one or more transceivers arranged to communicate usingdifferent wireless connection types, e.g. different types of protocols,communication ranges, operating power requirements, RF sub-bands,information types (e.g., voice or data), use scenarios, applications,and so forth. In various embodiments, the transceiver module 124 maycomprise one or more transceivers arranged to support voicecommunication for a cellular radiotelephone system such as a GSM, UMTS,and/or CDMA system. The transceiver module 124 also may comprise one ormore transceivers arranged to perform data communications in accordancewith one or more wireless communications protocols such as WWANprotocols (e.g., GSM/GPRS protocols, CDMA/1xRTT protocols, EDGEprotocols, EV-DO protocols, EV-DV protocols, HSDPA protocols, etc.),WLAN protocols (e.g., IEEE 802.11a/b/g/n, IEEE 802.16, IEEE 802.20,etc.), PAN protocols, Infrared protocols, Bluetooth protocols, EMIprotocols including passive or active RFID protocols, and so forth. Insome embodiments, the transceiver module 124 may comprise a GlobalPositioning System (GPS) transceiver to support position determinationand/or location-based services.

The transceiver module 124 generally may be implemented using one ormore chips as desired for a given implementation. Although thetransceiver module 124 may be shown as being separate from and externalto the radio processor 104 for purposes of illustration, in variousembodiments some portion or the entire transceiver module 124 may beincluded on the same integrated circuit as the radio processor 104. Theembodiments are not limited in this context.

In various embodiments, the transceiver module 124 may comprise one ormore transceivers or components arranged to support voice and/or datacommunications for the wireless network systems or protocols aspreviously described. For example, the mobile computing device 100 maycomprise one or more radio frequency (RF) transceivers 124 a supportingvoice communication (e.g., CDMA, GSM, UMTS, WCDMA), WWAN datacommunication (e.g., EVDO, EVDV, CDMA/1xRTT, GSM/GPRS, EDGE, HSDPA),WLAN data communication (e.g., WiFi, WiMAX), and/or WPAN datacommunication (e.g., Infrared protocols, Bluetooth®, IR, EMI) inaccordance with the described embodiments. The transceiver module 124may further comprise a GPS transceiver 124 b supporting positiondetermination in accordance with the described embodiments.

The mobile computing device 100 may comprise an antenna system 126coupled to the radio processor 104 through the transceiver module 124.The antenna system 126 may transmit and/or receive electrical signalsand may comprise or be implemented as one or more internal antennasand/or external antennas tuned for operating at one or more frequencybands. As shown, the antenna system 126 may comprise one or moreantennas 126 a connected to one or more RF transceivers 124 a supportingvoice and/or data communications in accordance with the describedembodiments. The antenna system 126 may further comprise a GPS antenna126 b connected to the GPS transceiver 124 b supporting positiondetermination in accordance with the described embodiments.

The mobile computing device 100 may comprise a subscriber identitymodule (SIM) 128 coupled to the radio processor 104. The SIM 128 maycomprise, for example, a removable or non-removable smart card arrangedto encrypt voice and data transmissions and to store user-specific datafor allowing a voice or data communications network to identify andauthenticate the user. The SIM 128 also may store data such as personalsettings specific to the user.

As mentioned above, the host processor 102 may be arranged to provideprocessing or computing resources to the mobile computing device 100.For example, the host processor 102 may be responsible for executingvarious software programs such as system programs and applicationprograms to provide computing and processing operations for the mobilecomputing device 100.

System programs generally may assist in the running of the mobilecomputing device 100 and may be directly responsible for controlling,integrating, and managing the individual hardware components of thecomputer system. Examples of system programs may include, withoutlimitation, an operating system (OS), device drivers, programming tools,utility programs, software libraries, application programming interfaces(APIs), and so forth. The mobile computing device 100 may use anysuitable OS in accordance with the described embodiments such as a PalmOS®, Palm OS® Cobalt, Palm® WebOS™, Microsoft® Windows OS, MicrosoftWindows® CE, Microsoft Pocket PC, Microsoft Mobile, Symbian OS™, EmbedixOS, Linux, Binary Run-time Environment for Wireless (BREW) OS, JavaOS, aWireless Application Protocol (WAP) OS, and so forth.

As shown in FIG. 1, the mobile computing device 100 may comprise orimplement several applications 130. The applications 130 may comprise,for example, a telephone application 131 such as a cellular telephoneapplication, a Voice over Internet Protocol (VoIP) application, aPush-to-Talk (PTT) application, and so forth. The applications 130 mayfurther comprise a voicemail application 132, an instant messagingapplication 133, an e-mail application 134, a browser application 135,and other applications 136. Applications 130 generally may allow a userto accomplish one or more specific tasks. Examples of other applications136 may include, without limitation, one or more messaging applications(e.g., telephone, voicemail, facsimile, e-mail, IM, SMS, MMS, videoconferencing), personal information management (PIM) applications (e.g.,contacts, calendar, scheduling, tasks), word processing applications,spreadsheet applications, database applications, media applications(e.g., video player, audio player, multimedia player, digital camera,video camera, media management), gaming applications, and so forth. Invarious implementations, the applications 130 may provide one or moregraphical user interfaces (GUIs) to communicate information between themobile computing device 100 and a user. In some embodiments,applications 130 may comprise upper layer programs running on top of theOS of the host processor 102 that operate in conjunction with thefunctions and protocols of lower layers including, for example, atransport layer such as a Transmission Control Protocol (TCP) layer, anetwork layer such as an Internet Protocol (IP) layer, and a link layersuch as a Point-to-Point (PPP) layer used to translate and format datafor communication.

Applications 130 may generally each have a preferred set of Quality ofService (QoS) criteria, that, when enforced, provide optimal performancefor the application. Some applications, however, may still be able tooperate with lower QoS criteria, although performance may be affected.

As shown in FIG. 1, the mobile computing device 100 may comprise orimplement a power management component 138. Power management component138 may be in communication with host processor 102 and/or radioprocessor 104. Power management component 138 may monitor the batterypower level of power supply 120. In accordance with the battery powerlevel, power management component 138 may select a particular wirelessconnection type for an application 130 to use. Wireless connection typesmay include, for example, an infrared connection, a Bluetoothconnection, a wireless LAN connection, a GSM connection, a CDMAconnection, a WCDMA connection, other 2G or 3G connections, etc. Powermanagement component 138 may consider quality of service (QoS)requirements of the application 130 when selecting a wireless connectiontype. In an embodiment, power management component 138 may detect whenthe battery power level falls below a threshold, and then may assign theapplication 130 to a different wireless connection type that consumesless power. In some cases, power management component 138 may terminatethe application, and/or disable the wireless connection type until thebattery is recharged.

Power management component 138 may use power management settings 140,which may be stored in memory 110. Power management settings 140 maystore information that associates a battery power level with actionstaken to preserve or extend battery life. In some embodiments, differentbattery power level thresholds may trigger different actions. Forexample, each wireless connection type may have its own threshold belowwhich the connection is disabled. Similarly, each application may haveits own threshold below which the application is switched to a lower QoSconnection.

FIG. 2 illustrates a logic flow 200 in accordance with one or moreembodiments. Logic flow 200 may be representative of the operationsexecuted by one or more embodiments described herein, such as by mobilecomputing device 100, with host processor 102, and radio processor 104.As shown in logic flow 200, in block 202, an application 130 beginsoperating via host processor 102.

In block 204, power management component 138 may determine the QoSrequirements of application 130. For example, an application thatrequires primarily a one-way connection, such as telephone app 131,e-mail application 134, or browser 135 presenting static web pages, mayhave lower QoS requirements regarding bandwidth and latency, forexample. An interactive application, or one that otherwise requires atwo-way connection may have higher requirements for bandwidth, latencyand reliability, for example. Such applications may include, forexample, web browser application 135 displaying a video, an applicationusing real-time audio and/or video, networked games, etc. Higher QoSrequirements may correlate with faster battery consumption.

In block 208, power management component 138 may determine whatpercentage of battery power remains.

In block 210, power management component 138 may select a radio, andwireless connection type, for the application in accordance with the QoSrequirements and the remaining battery power. In some embodiments, powermanagement component 138 may poll radio processor 104 to determinewhether the application can be run using the application's preferredQoS. For example, for a high QoS application, such as an applicationusing real-time video, if the battery power level is above a threshold,power management component 138 may allow the application to use WCDMA oranother wireless connection that consumes battery power relativelyquickly. If, however, the battery power level is below a threshold, forexample, 30%, power management component 138 may either force theapplication to use a lower QoS wireless connection, such as GSM, or mayprevent the application from operating altogether.

FIG. 3 illustrates a logic flow 300 in accordance with one or moreembodiments. Logic flow 300 may be representative of the operationsexecuted by one or more embodiments described herein, such as by mobilecomputing device 100, with host processor 102, and radio processor 104.Logic flow 300 may apply when one or more applications that use wirelessconnections are already in operation.

As shown in logic flow 300, in block 302, an application is already inoperation via host processor 102. In block 304, power managementcomponent 138 may monitor the battery power level to determine if thelevel is greater than a threshold.

In block 306, when the battery power level is below a threshold, powermanagement component 138 may determine whether the application canoperate at a lower QoS. Power management component 138 may make thisdetermination, for example, from power management settings 140, or fromthe application itself. In an embodiment, power management component 138may send a power level to an application processor, such as hostprocessor 102. If the battery power level is above the threshold, theapplication may continue to operate with the radio and wirelessconnection type currently in use.

In block 308, if the application can operate at a lower QoS, powermanagement component 138 may switch the application to a radio orwireless connection type that uses less power and has lower QoSsettings.

In block 310, if the application cannot operate at a lower QoS than itscurrent state, power management component 138 may terminate theapplication. In some cases, the radio or wireless connection type may betemporarily disabled so that no other application may use it until thebattery power level is recharged above the threshold. For example, ifthe battery power level falls below 10%, then all Bluetoothcommunication may be disabled.

FIG. 4 illustrates a logic diagram 400. The logic diagram 400 mayillustrate one or more interfaces that may employ various techniques toexchange information between the elements of the mobile computing device110, such as those shown and described with reference to the mobilecomputing device 110 of FIG. 1. For example, an interface may activateand/or detect activated signal lines. Such signal lines may be dedicatedto particular signals. Alternatively, an interface may generate datamessages to be transmitted across various connections. Exemplaryconnections may include a parallel interface, a serial interface, a businterface, and/or a data network.

In the illustrated embodiment shown in FIG. 4, an application 130 maygenerate and send a request 402 to open and use a wireless connectiontype to power management component 138. In an embodiment, application130 may send QoS requirements as part of request 402, or separately as amessage 404.

Power management component 138 may determine what percentage of batterypower remains by sending a request 406 to power supply 120. Power supply120 may send a response 408 with the percentage of remaining batterypower. In an embodiment, power supply 120 may periodically send response408 automatically, without being polled first.

Power management component 138 may poll radio processor 104 with arequest 410 to determine whether application 130 can be run using theapplication's preferred QoS and requested wireless connection type.Radio processor 104 may response with a response 412 that allows ordenies the connection.

Power management component 138 may periodically poll radio processor104, independently of a specific application request, with a poll 414 todetermine what wireless connection types are available given a currentbattery power level. Radio processor 104 may respond with a response 416that may contain an indication of which wireless connection types are nolonger available for use because the battery power level is too low. Inan embodiment, radio processor 104 may receive power indication messages422 directly from power supply 120. Then radio processor 104 may notifypower management component 138 with response 416 when the battery powerlevel is too low to allow applications having certain QoS requirementsto operate or to continue operating.

When the battery power level drops below a threshold, power managementcomponent 138 may change the wireless connection type for application130 by sending a message 418 to radio processor to change the radioused, the QoS settings or otherwise alter the wireless connection toconserve power. Power management component 138 may also informapplication 130 via a message 420 that the wireless connection type haschanged.

Numerous specific details have been set forth to provide a thoroughunderstanding of the embodiments. It will be understood, however, thatthe embodiments may be practiced without these specific details. Inother instances, well-known operations, components and circuits have notbeen described in detail so as not to obscure the embodiments. It can beappreciated that the specific structural and functional details arerepresentative and do not necessarily limit the scope of theembodiments.

Various embodiments may comprise one or more elements. An element maycomprise any structure arranged to perform certain operations. Eachelement may be implemented as hardware, software, or any combinationthereof, as desired for a given set of design and/or performanceconstraints. Although an embodiment may be described with a limitednumber of elements in a certain topology by way of example, theembodiment may include more or less elements in alternate topologies asdesired for a given implementation.

Any reference to “one embodiment” or “an embodiment” may mean that aparticular feature, structure, or characteristic described in connectionwith the embodiment is included in at least one embodiment. Theappearances of the phrase “in one embodiment” in the specification arenot necessarily all referring to the same embodiment.

Although some embodiments may be illustrated and described as comprisingexemplary functional components or modules performing variousoperations, it can be appreciated that such components or modules may beimplemented by one or more hardware components, software components,and/or combination thereof. The functional components and/or modules maybe implemented, for example, by logic (e.g., instructions, data, and/orcode) to be executed by a logic device (e.g., processor). Such logic maybe stored internally or externally to a logic device on one or moretypes of computer-readable storage media.

The described embodiments illustrate exemplary implementations, and thefunctional components and/or modules may be implemented in various otherways which are consistent with the described embodiments. Furthermore,the operations performed by such components or modules may be combinedand/or separated for a given implementation and may be performed by agreater number or fewer number of components or modules.

Unless specifically stated otherwise, terms such as “processing,”“computing,” “calculating,” “determining,” or the like, may refer to theaction and/or processes of a computer or computing system, or similarelectronic computing device, that manipulates and/or transforms datarepresented as physical quantities (e.g., electronic) within registersand/or memories into other data similarly represented as physicalquantities within the memories, registers or other such informationstorage, transmission or display devices.

Some embodiments may be described using the expression “coupled” and“connected” along with their derivatives. These terms are not intendedas synonyms for each other. For example, some embodiments may bedescribed using the terms “connected” and/or “coupled” to indicate thattwo or more elements are in direct physical or electrical contact witheach other. The term “coupled,” however, may also mean that two or moreelements are not in direct contact with each other, but yet stillco-operate or interact with each other. With respect to softwareelements, for example, the term “coupled” may refer to interfaces,message interfaces, API, exchanging messages, and so forth.

Some of the figures may include a flow diagram. Although such figuresmay include a particular logic flow, it can be appreciated that thelogic flow merely provides an exemplary implementation of the generalfunctionality. Further, the logic flow does not necessarily have to beexecuted in the order presented unless otherwise indicated. In addition,the logic flow may be implemented by a hardware element, a softwareelement executed by a processor, or any combination thereof.

While certain features of the embodiments have been illustrated asdescribed above, many modifications, substitutions, changes andequivalents will now occur to those skilled in the art. It is thereforeto be understood that the appended claims are intended to cover all suchmodifications and changes as fall within the true spirit of theembodiments.

1. An apparatus comprising: a radio processor, to connect to at leastone radio providing at least two wireless connection types, wherein afirst wireless connection type consumes power at a different rate from asecond wireless connection type; a host processor, to operate anapplication that uses the radio; a battery to supply power to the radioprocessor and the host processor; and a power management component,operative on the host processor, to select a wireless connection typefor the application according to a Quality of Service (QoS) requirementof the application and an amount of power remaining in the battery. 2.The apparatus of claim 1, wherein a wireless connection type comprisesat least one of: a short range wireless connection, a wireless networkconnection, a global system for mobile communications (GSM) connection,a code division multiple access (CDMA) connection, or a wideband codedivision multiple access (WCDMA) connection.
 3. The apparatus of claim1, wherein the power management component is further operative tomonitor a power level of the battery, and to cause the application tochange to a different wireless connection type having different QoSparameters when the power level falls below a threshold.
 4. Theapparatus of claim 1, wherein the power management component is furtheroperative to monitor a power level of the battery, and to cause theapplication to terminate when the power level falls below a threshold.5. The apparatus of claim 1, wherein the power management component isfurther operative to monitor a power level of the battery, and todisable the wireless connection type when the power level falls below athreshold.
 6. The apparatus of claim 1, wherein the radio processornotifies the power management component when the battery power level istoo low to allow applications having certain QoS requirements to operateor to continue operating.
 7. The apparatus of claim 1, wherein the powermanagement component is further operative to prevent the applicationfrom operating if the battery power level is below a threshold.
 8. Amethod operating on a wireless computing device, the method comprising:operating an application, on a processor on the device, that uses afirst wireless connection type, the application operating at a firstQuality of Service (QoS) requirement; monitoring a battery power levelof the wireless computing device; when the battery power level fallsbelow a threshold: determining whether the application can operate at alower QoS than the first QoS requirement; and switching the applicationto a second wireless connection type that implements the lower QoS. 9.The method of claim 8, further comprising: terminating the applicationwhen the application cannot operate at the lower QoS.
 10. The method ofclaim 8, further comprising: disabling the first wireless connectiontype when the battery power level falls below a second threshold. 11.The method of claim 8, wherein a wireless connection type comprises atleast one of: a short range wireless connection, a wireless networkconnection, a global system for mobile communications (GSM) connection,a code division multiple access (CDMA) connection, or a wideband codedivision multiple access (WCDMA) connection.
 12. The method of claim 8,further comprising: when an application begins operating on the device:determining the QoS requirement of the application; determining thebattery power level; and selecting a wireless connection type for theapplication according to the QoS requirement of the application and thebattery power level.
 13. The method of claim 12, further comprising:preventing the application from operating if the battery power level isbelow a threshold.
 14. A machine-readable storage medium comprisinginstructions that, when executed, cause a mobile computing device to:begin operating an application on the device: determine the QoSrequirement of the application; determine the battery power level on thedevice; and select a first wireless connection type for the applicationaccording to the QoS requirement of the application and the batterypower level.
 15. The storage medium of claim 14, wherein a wirelessconnection type comprises at least one of: a short range wirelessconnection, a wireless network connection, a global system for mobilecommunications (GSM) connection, a code division multiple access (CDMA)connection, or a wideband code division multiple access (WCDMA)connection.
 16. The storage medium of claim 14, further comprisinginstructions that, when executed, cause the mobile computing device to:monitor a power level of the battery, and cause the application tochange to a second wireless connection type operating at a lower QoSthan the first wireless connection type when the battery power levelfalls below a threshold.
 17. The storage medium of claim 14, furthercomprising instructions that, when executed, cause the mobile computingdevice to: monitor a power level of the battery, and cause theapplication to terminate when the battery power level falls below athreshold.
 18. The storage medium of claim 14, further comprisinginstructions that, when executed, cause the mobile computing device to:monitor a power level of the battery, and disable the wirelessconnection type when the power level falls below a threshold.
 19. Thestorage medium of claim 14, further comprising instructions that, whenexecuted, cause the mobile device to: prevent the application fromoperating if the battery power level is below a threshold.